import React from 'react';
import ReactDOM from 'react-dom';
// 引用子页面
import BodyChild from './bodyChild';



// 定义一个默认属性值  
const defaultName = {
	userName: "默认用户名"
}

export default class ComponentBody extends React.Component {
	// state初始化 state的作用域只属于当前的类,不会污染其他的类
	constructor() {
		// 调用基类的所有初始化方法
		super();
		this.state = {
			userName: "张三",
			age: 20,
			sex: "男"
		} //初始化赋值
	}

	render() {
		return (
			<div>
				<p>
					从index.js的 数据:  <br />
					userName:{this.props.userName},
					age:{this.props.age},
					userID:{this.props.userID}
				</p>
				<p>
					从body.js得到的数据  <br />
					userName : {this.state.userName} <br />
					age: {this.state.age} <br />
					sex:{this.state.sex}
				</p>
				<p>
					子页面模块输出信息  <br />
					{/*属性少的话可以这样输出 如下:*/}
					{/*<BodyChild userID={this.props.userID} userName={this.props.userName}/>*/}
					{/*
						属性多的话可以全部得到信息 
						输出所有信息 :{...this.props}
						id={999}  这个属性覆盖掉了 index.js的 id
					*/}
					<BodyChild  {...this.props} id={999} />
				</p>
			</div>
		)
	}
}
// 判断输入的数据类型
ComponentBody.PropTypes = {
	// userID isRequired是必须的,数字型
	userID: React.PropTypes.number.isRequired
}
/* 设置默认用户名 头部必须声明
* const defaultName = {
*	userName:"默认用户名"
* }
*/
ComponentBody.defaultProps = defaultName;